Method for encoding and decoding communication data

ABSTRACT

The invention relates to a method for encoding and decoding communication data, especially voice data, which is transmitted in a plurality of data packets in a digital communication network, especially for internet telephony. The communication data is encoded by means of a selected code at an emission point in each of the data packets; a code number of the selected code is transmitted as code information with each of the data packets; and the communication data is decoded by allocating the code number to the code stored in the code table created at a reception point.

CROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application is the U.S. National Stage of InternationalApplication No. PCT/DE02/02837, filed Aug. 1, 2002 and claims thebenefit thereof. The International Application claims the benefits ofGerman application No. 10142498.1 filed Aug. 30, 2001, both of theapplications are incorporated by reference herein in their entirety.

FIELD OF INVENTION

[0002] The invention relates to a method for encryption and decryptionof communication data according to the preamble of patent claim 1.Methods for encryption and decryption of communication data arefrequently employed with data transmission via public networks, such asa network based on the ISDN standard or the Internet, as a protectivemeasure against unauthorized eavesdropping on the transmitted data.These types of encryption procedures are based as a rule on the use ofadditional hardware components which perform an encryption anddecryption of the communication data.

BACKGROUND OF INVENTION

[0003] As an alternative to the hardware components or in combinationwith these components software for encryption or decryption of the datacan be used, however this requires powerful computers for the encryptionsystems.

[0004] To make it possible for the hardware components to encrypt ordecrypt the data it is necessary for the data to be transmitted ortransmitted back to the hardware components. This requires additionaltime for the encryption process before the encrypted data can betransmitted from a send location to a receive location or can be read ata receive location.

[0005] Since with Internet telephony (Voice-over-IP) small data packetsare used for transmission of the speech data, and the data packets,because of their connectionless transmission, are able to choosedifferent paths to the receive locations in order to be reassembledthere into a complete sequence of packets again, fast decryption of thedata assigned to the individual data packets must be possible to avoidfurther processing times, in order to retain a good speech qualityduring the telephone call.

[0006] To make faster transmission of the data possible, the UserDatagram Protocol (UDP), which, unlike TCP, dispenses with errordetection and correction, is used as the transmission protocol forInternet telephony. Data packets that are transferred with the UDPgenerally have a smaller header containing various administration orcontrol data. This type of administration data also includes errordetection and correction data which in this case can be left out. Theerror detection and correction data is then frequently supported by aprotocol from a higher layer, such as for the Real Time Protocol (RTP)for example. Provided the header is small, a relatively small overheadcan be realized. This in its turn leads to faster processing of thepayload data transmitted with the data packets. Because UDP is used asthe transport protocol, loss-free transmission of the speech data is notguaranteed in Internet telephony because of the lack of errorcorrection. The best method is therefore the independent encryption,transmission and decryption of individual data packets which are assmall as possible. To date the encryption methods have been based on anexchange of the key with which the payload data contained in the datapackets was encrypted. A key of this type can be transmitted before thepayload data from the send location to the receive location. Theadditional exchange method and the associated creation of a key requireadditional computing and transmission time which means that the transferof communication data takes longer. Furthermore, with the encryptionmethods known to date, there may well be license fees to be paid forusing these methods. The computing times increase with the encryptionsystems which aim to simultaneously encode the data of a number ofconnections running in parallel.

SUMMARY OF INVENTION

[0007] As a result, the object of the present invention is to develop ageneric method for encryption and decryption of communication data insuch a way as to make faster and lower-cost encryption and decryption ofthe data possible. This object is achieved in accordance with thefeatures of patent claim 1.

[0008] A significant point of the invention lies in the fact that it isnot necessary—as previously—to use an exchange process for the key withwhich the payload data is encrypted between send and receive locationbut instead a key number is transmitted as key information with thecommunication data within a data packet. This type of key number allowsa small header within the data packet and thus a short transmission andprocessing time for the data packets.

[0009] The key number is arranged for example as the index of number ofkeys arranged within a key table and, after receipt of the data packetand evaluation of the header data, allows fast access to the correct keythat is then used for decryption of the communication data.

[0010] In accordance with a preferred embodiment, the key number will beselected at the send location by means of a random generator, so that anexternal observer would not be able to predict which key will be used totransmit the data packets. Since for each data packet a new key numberis selected at random with the generator, the decryption of the payloaddata by an unauthorized observer after the assembly of a number of datapackets is practically impossible.

[0011] In particular the fact it is not possible to easily detect arandom correct decryption of a packet makes eavesdropping moredifficult.

[0012] Key tables with identical content are used at both the sendlocation and the receive location. The key tables are for examplecomposed of 4096 keys with the associated key numbers. Therefore, todecrypt the communication data it is not only necessary to know a largenumber of keys but also to know the assignment of the keys to a keynumber in each case.

[0013] The algorithm representing the key can be based on the DataEncryption Standard (DES) and/or the Advanced Encryption Standard (AES)which allows simultaneous encryption and compression of thecommunication data. The speech data is quickly encrypted and compressedespecially when the method in accordance with the invention is used inInternet telephony.

[0014] Advantageously the data packet can additionally contain sizeinformation about the extent of the payload data to allow filler byteswhich are generated as part of a block-type encryption method to berecognized as such and separated from the user data.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015] Further advantageous embodiments emerge from the subclaims.Additional suitable uses and advantages are listed in the descriptionbelow in conjunction with the drawing. The drawing shows:

[0016]FIG. 1 a simplified diagram of equipment used for execution inaccordance with the inventive method, and

[0017]FIG. 2 The structure of a data packet with an encryption of thedata in accordance with the inventive method.

DETAILED DESCRIPTION OF INVENTION

[0018]FIG. 1 shows a greatly simplified diagram of devices which areused for executing the method in accordance with the invention. To makean Internet telephone call a public IP network 1 links a number ofencryption or decryption systems 2, 3 and 4, which are connected to anumber of telephones 5-7, 8-10 and 11-13. Between the telephones 5-13and the systems 2, 3 and 4 there are connections 14-16, 17-19 whichtransmit speech data from the telephones to the systems in unencryptedform. The connections 23, 24 and 25 arranged between the IP network 1and the systems 2, 3 and 4 on the other hand are used for transmissionof encrypted speech data within the framework of an RTP data packet.

[0019] When a user of telephone 7 wants to speak via the IP network witha user of telephone 8, speech data is transmitted via line 16 to thesystem 2. In system 2 a key number is selected by means of a randomgenerator as a random number for each data packet in which the speechdata will be transmitted and assigned to the relevant data packet as keyinformation and transmitted together with the speech data via IP network1. In a key table assigned to system 2 the key belonging to the keynumber is extracted and employed as an algorithm, based on DES forexample, for encryption of the speech data.

[0020] The encrypted speech data is sent as payload data in the form ofan RTP payload together with the key number for each data packetseparately via the IP network 1 to the system 3. There the key number isextracted from each data packet and assigned as an index in a key tablearranged in system 3 which is identical to the key table arranged insystem 2. In the key table there is access to the key assigned to theindex, so that it can be used for decrypting the speech data. Theencrypted speech data of the individual data packets is combined to forma common data record so that contiguous, easily understandable recordscan be transmitted over line 17 to telephone 8.

[0021]FIG. 2 shows the structure of a data packet in which speech datais encrypted according to the inventive method. The structure of datapacket 30 comprises the volumes of payload data 31 (RTP Payload), theencrypted payload data 32, the key information 33, the size information34 about the extent of the encrypted payload data and the RTP headerdata 35. The payload data volume proportion 31 includes a proportion 36of encrypted data and the key information 33. The key information is 16bits in length, of which the 12 lower-order bits form the key number.The 12 bits can be combined with one another in 4,096 different ways sothat 4,096 different keys can be selected from the key table by means ofthe key number. When each of these keys comprises 64 bits a key tablewith a storage capacity of 32 kilobytes is required.

[0022] The four higher-order bits can preferably contain encryptioninformation about the encryption algorithm used.

[0023] To determine the index in the key table of the receive locationfrom the 16-bit integer number of the key information, the 4higher-order bits of the key information are set to 0 and the index isdetermined from the remaining 12 lower-order bits of the index. Theindex will then be used to extract from within the key table a keyassigned to the index, as a rule 8 bytes in length, and use it todecrypt or encrypt the speech data. For this the key can also undergo ageneration procedure only at the moment of access, whereby it isselected via a random generator from a number of keys.

[0024] All systems 2, 3 and 4 feature key tables with identical contentswithin an overall system. Further overall systems can in their turn useother key tables which apply exclusively in their system.

[0025] It should be pointed out here that all parts and steps describedabove will be claimed as essential to the invention in their own rightand in any combination, especially the details shown in the drawings.Amendments of this are familiar to the expert.

1. A method for encrypting and decrypting communication data transmittedin a plurality of data packets in a digital communication network,comprising: encrypting the communication data in each of the datapackets with a selected key at a send location; transmitting a keynumber of the selected key with each of the data packets as keyinformation; and decrypting the communication data by assignment of thekey number to the key stored in a key table set up at a receivelocation.
 2. A method according to claim 1, wherein the key is selectedby defining the key number as a random number by a random numbergenerator.
 3. A method according to claim 1, wherein there is access tokey tables with identical content at the send location and the receivelocation.
 4. A method according to claim 1, wherein size informationabout the extent of the communication data is transmitted with one ofthe data packets.
 5. A method according to claim 1, wherein the key isan algorithm in accordance with the Data Encryption Standard and/or inaccordance with the Advanced Encryption Standard.
 6. A method accordingto claim 1, wherein the communication data is transmitted as payloaddata by the User Datagram Protocol transport protocol and additionaldata is transmitted by the Real Time Protocol in a header assigned toeach of the data packets.
 7. A method according to claim 1, wherein thecommunication data is encrypted and decrypted within a telecommunicationsystem connected to a plurality of terminals.
 8. A method in accordancewith claim 1, wherein Encryption information about an encryptionalgorithm used is transmitted in a data packet.
 9. A Method according toclaim 1, wherein the communication data is speech data.
 10. A methodaccording to claim 2, wherein there is access to key tables withidentical content at the send location and the receive location.
 11. Amethod according to claim 2, wherein size information about the extentof the communication data is transmitted with one of the data packets.12. A method according to claim 3, wherein size information about theextent of the communication data is transmitted with one of the datapackets.
 13. A method according to claim 2, wherein the key is embodiedas an algorithm in accordance with the Data Encryption Standard and/orin accordance with the Advanced Encryption Standard.
 14. A methodaccording to claim 3, wherein the key is an algorithm in accordance withthe Data Encryption Standard and/or in accordance with the AdvancedEncryption Standard.
 15. A method according to claim 2, wherein thecommunication data is transmitted as payload data by the User DatagramProtocol transport protocol and additional is transmitted by the RealTime Protocol in a header assigned to each of the data packets.
 16. Amethod according to claim 2, wherein the communication data is encryptedand decrypted within a telecommunication system connected to a pluralityof terminals.
 17. A method in accordance with claim 2, whereinEncryption information about an encryption algorithm used is transmittedin a data packet.
 18. A method according to claim 1, wherein thecommunication data is Internet telephony.
 19. A method according toclaim 6, wherein the additional data is the type of payload data and/orthe time at which the payload data was created.
 20. A method accordingto claim 15, wherein the additional data is the type of payload dataand/or the time at which the payload data was created.